<?php

namespace CacheManage;

/**
 *
 * @author dongasai
 */
interface DriverInterface
{

    /**
     * 判断是否存在
     * @param $key 键名
     * @return bool
     */
    public function has($key): bool;

    /**
     * 获取数据
     * @param $key 键名
     * @param null $default 默认值
     * @return mixed
     */
    public function get($key, $default = null);

    /**
     * 设置数据
     * @param $key 键名
     * @param $value 值
     * @param int $ttl 过期时间,秒
     * @return bool
     */
    public function set($key, $value, int $ttl = 0): bool;

    /**
     * 删除数据
     * @param $key
     * @return mixed
     */
    public function remove($key);

}
